package com.hejie.videoservice.service;

import java.io.File;
import java.util.Map;

public interface VideoProcessingService {
    /**
     * 生成视频缩略图
     * @param videoPath 视频文件路径
     * @param outputPath 缩略图输出路径
     * @param timeInSeconds 截取时间点(秒)
     * @return 是否生成成功
     */
    boolean generateThumbnail(String videoPath, String outputPath, int timeInSeconds);

    /**
     * 获取视频元数据
     * @param videoPath 视频文件路径
     * @return 包含时长、分辨率等信息的Map
     */
    Map<String, Object> getVideoMetadata(String videoPath);

    /**
     * 转码视频为指定格式
     * @param inputPath 输入视频路径
     * @param outputPath 输出视频路径
     * @param format 目标格式
     * @return 转码后的文件
     */
    File transcodeVideo(String inputPath, String outputPath, String format);

    /**
     * 生成视频不同分辨率版本
     * @param inputPath 输入视频路径
     * @param outputDir 输出目录
     * @param resolutions 分辨率列表，如["720p", "480p", "360p"]
     * @return 转码后的文件列表
     */
    Map<String, File> generateMultiResolutionVersions(String inputPath, String outputDir, String[] resolutions);
}